package view;

import java.awt.Point;

import javax.swing.JPanel;

/**
 * Interface used to manage the frame of the board display
 */
public interface FrameManager {

	/**
	 * Sets icon of the button matching given position, according to the type and color of piece
	 * on given position on board
	 * @param pieceType- piece type determines the icon 
	 * @param buttonPosition- position of the button to update its icon
	 * @param isFirstPlayer- piece color
	 */
	public void setButtonIcon(String pieceType, Point buttonPosition, boolean isFirstPlayer);
	
	/**
	 * Adds given panel to the frame
	 * @param panelToAdd- panel to be added to the frame
	 */
	public void addPanel(JPanel panelToAdd);
	
	/**
	 * Removes given panel from the frame
	 * @param panelToRemove- panel to be removed from the frame
	 */
	public void removePanel(JPanel panelToRemove);
	
	/**
	 * Validates changes on frame
	 */
	public void validateFrame();
}